记录一下怎么自己用OpenSSL制作一个属于自己的CA证书󠄐󠄹󠅀󠄪󠄡󠄨󠄞󠄡󠄡󠄩󠄞󠄡󠄤󠄠󠄞󠄥󠄨󠄬󠅒󠅢󠄟󠄮󠄐󠅅󠄹󠄴󠄪󠄾󠅟󠅤󠄐󠄼󠅟󠅗󠅙󠅞󠄬󠅒󠅢󠄟󠄮󠅄󠅙󠅝󠅕󠄪󠄡󠄧󠄤󠄧󠄥󠄤󠄩󠄡󠄤󠄧󠄬󠅒󠅢󠄟󠄮󠇕󠅰󠆖󠇖󠅴󠅿󠇕󠅽󠆊󠇕󠆞󠆒󠄐󠇗󠅹󠅸󠇖󠆍󠅳󠇖󠅹󠅰󠇖󠆌󠅹󠄬󠅒󠅢󠄟󠄮
![图片[1]-用 OpenSSL 做自签CA证书 笔记-倦意博客](https://jyblog.cn/wp-content/uploads/2025/05/20250517014121332-7C8CE023BDE287F2BC41105618EEC9A6.png)
OpenSSL下载:
官方发布地址:https://slproweb.com/products/Win32OpenSSL.html
[官方链接] [本地分流]
将OpenSSL安装目录下bin文件夹部署到环境变量,如:󠄐󠄹󠅀󠄪󠄡󠄨󠄞󠄡󠄡󠄩󠄞󠄡󠄤󠄠󠄞󠄥󠄨󠄬󠅒󠅢󠄟󠄮󠄐󠅅󠄹󠄴󠄪󠄾󠅟󠅤󠄐󠄼󠅟󠅗󠅙󠅞󠄬󠅒󠅢󠄟󠄮󠅄󠅙󠅝󠅕󠄪󠄡󠄧󠄤󠄧󠄥󠄤󠄩󠄡󠄤󠄧󠄬󠅒󠅢󠄟󠄮󠇕󠅰󠆖󠇖󠅴󠅿󠇕󠅽󠆊󠇕󠆞󠆒󠄐󠇗󠅹󠅸󠇖󠆍󠅳󠇖󠅹󠅰󠇖󠆌󠅹󠄬󠅒󠅢󠄟󠄮
如:C:\Program Files\OpenSSL-Win64\bin
部署到环境变量Path中
制作过程:
打开命令行CMD:
输入cd + 空格 + 您要放CA证书的目录󠄐󠄹󠅀󠄪󠄡󠄨󠄞󠄡󠄡󠄩󠄞󠄡󠄤󠄠󠄞󠄥󠄨󠄬󠅒󠅢󠄟󠄮󠄐󠅅󠄹󠄴󠄪󠄾󠅟󠅤󠄐󠄼󠅟󠅗󠅙󠅞󠄬󠅒󠅢󠄟󠄮󠅄󠅙󠅝󠅕󠄪󠄡󠄧󠄤󠄧󠄥󠄤󠄩󠄡󠄤󠄧󠄬󠅒󠅢󠄟󠄮󠇕󠅰󠆖󠇖󠅴󠅿󠇕󠅽󠆊󠇕󠆞󠆒󠄐󠇗󠅹󠅸󠇖󠆍󠅳󠇖󠅹󠅰󠇖󠆌󠅹󠄬󠅒󠅢󠄟󠄮
创造一个根CA Key:
openssl genrsa -out cakey.key 4096
此时你的文件夹内将出现cakey.key
文件
根据上一个根CA Key生成一个CA证书
openssl req -new -x509 -days 14610 -key cakey.key -out cacert.crt
参考内容如下,根据你的需求修改:
# openssl req -new -x509 -days 14610 -key cakey.key -out cacert.crt
...
Country Name (2 letter code) [XX]:CN
State or Province Name (full name) []:JiangXi
Locality Name (eg, city) [Default City]:NanChang
Organization Name (eg, company) [Default Company Ltd]:JuanYiBlog Technology Co. Ltd.
Organizational Unit Name (eg, section) []:JuanYi Root CA Trust
Common Name (eg, your name or your server's hostname) []:JuanYi Root CA - R1
Email Address []:admin@jyblog.cn
此时你的文件夹内将出现cacert.crt
文件
查看根CA证书是否生成
openssl x509 -in cacert.crt -noout -text
根据根CA证书生成一个名为jyblog.cn的二级CA私钥
openssl genrsa -out jyblog.cn.key 2048
此时你的文件夹内将出现jyblog.cn.key
文件
根据将二级CA 私钥 生成一个二级CA 公钥:
openssl req -new -days 3650 -key jyblog.cn.key -out jyblog.cn.csr
参考内容如下,根据你的需求修改:
Common Name 一定要填写你的网站域名,Challenge Password不填
openssl req -new -days 3650 -key jyblog.cn.key -out jyblog.cn.csr
-----
Country Name (2 letter code) [AU]:CN
State or Province Name (full name) [Some-State]:JiangXi
Locality Name (eg, city) []:NanChang
Organization Name (eg, company) [Internet Widgits Pty Ltd]:JYBlog Co.Ltd
Organizational Unit Name (eg, section) []:JY
Common Name (e.g. server FQDN or YOUR name) []:*.jyblog.cn
Email Address []:admin@jyblog.cn
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
此时你的文件夹内将出现jyblog.cn.csr
文件
生成一个二级CA证书 :
openssl x509 -req -days 3650 -in jyblog.cn.csr -CA cacert.crt -CAkey cakey.key -CAcreateserial -out jyblog.cn.crt
此时你的文件夹内将出现jyblog.cn.crt
文件
生成证书链:
Windows:
type jyblog.cn.crt cacert.crt > fullchain.pem
Linux:
cat jyblog.cn.crt cacert.crt > fullchain.pem
执行到这一步,你已经完整的制作出一个自签的CA证书!
证书链(PEM)为:fullchain.pem
密钥(Key)为 :jyblog.cn.key
其他内容:
验证证书合法性:
openssl verify -CAfile fullchain.pem jyblog.cn.crt
OCSP验证:
需要的确是某个CA颁发的证书,自签CA不支持OCSP验证󠄐󠄹󠅀󠄪󠄡󠄨󠄞󠄡󠄡󠄩󠄞󠄡󠄤󠄠󠄞󠄥󠄨󠄬󠅒󠅢󠄟󠄮󠄐󠅅󠄹󠄴󠄪󠄾󠅟󠅤󠄐󠄼󠅟󠅗󠅙󠅞󠄬󠅒󠅢󠄟󠄮󠅄󠅙󠅝󠅕󠄪󠄡󠄧󠄤󠄧󠄥󠄤󠄩󠄡󠄤󠄧󠄬󠅒󠅢󠄟󠄮󠇕󠅰󠆖󠇖󠅴󠅿󠇕󠅽󠆊󠇕󠆞󠆒󠄐󠇗󠅹󠅸󠇖󠆍󠅳󠇖󠅹󠅰󠇖󠆌󠅹󠄬󠅒󠅢󠄟󠄮
openssl ocsp -issuer fullchain.pem -cert jyblog.cn.crt -text -url http://ocsp.sectigo.com -header "Host=ocsp.sectigo.com"
暂无评论内容